1. Field of the Invention
This invention relates to a universal host interface system for data acquisition devices such as bar code scanners and in particular to such a system which implements a programmable cable interface device to couple a universal and generic data acquisition device interface to a specific host device.
2. Description of Related Art
Various types of data acquisition devices exist which allow a user to collect and transmit data to a host computing device. Data acquisition devices may be terminals, with keypad entry means and a display. In addition, data acquisition devices may be bar code scanners in a stand alone configuration or integrated with a terminal. Various types of bar code scanning devices are known in the art which optically scan a bar code printed on a substrate for capture of data encoded in the bar code. Laser bar code scanning devices use a laser light source such as a visible laser diode to scan the bar code by sweeping the laser source across the bar code with a mechanically oscillating reflecting element such as a mirror. The light reflected from the bar code is collected by a photosensor directly from the bar code or retroreflectively off of a portion of the scanning mirror. The analog waveform output by the photosensor has an amplitude which represents the amount of laser light reflected off the bar code. Thus, the varying amplitude of the analog waveform represents the relative spacing of the various bars and spaces of the bar code, which in turn represents the data encoded therein. The analog signal is processed, digitized and decoded into data representative of that which had been encoded into the target bar code.
Bar code scanning devices are also known in the art which are based on solid state imagers such as charge coupled devices (CCDs). CCD based bar code readers are either one-dimensional or two-dimensional. One-dimensional CCD bar code scanners use a linear array of photosensors to capture an image of a cross section of the entire linear bar code at once and produce an analog waveform whose amplitude is representative of the darkness and lightness of the bars and spaces of the captured image. The electric charge stored in each element of the CCD array as a function of the amount of light sensed by an area covered by each element is shifted out serially to form electric signals for further processing, digitizing and decoding. Two dimensional CCD bar code readers operate similarly to capture an image of an entire two-dimensional bar code symbol at once and process it accordingly. The waveform is digitized and decoded in a means similar to laser scanners.
The decoded signals are typically transmitted to a host device for processing, storage, and the like. Many types of host devices exist, depending on the particular application desired by the user. For example, scanners are used at POS cash register terminals to scan in the bar code of a product, where the terminal uses the bar code data as a pointer to look up the price and item description in memory. Scanners are also used to interface to personal computers with keyboard wedges, where the scanner is inserted in the path between the keyboard and the computer, and the scanner input must be configured to appear the same to the computer as keyed input from the keyboard. Scanners are also used to drive RS-232 computer interfaces in other applications.
In most cases, each different type of host device implements a different type of input/output interface, thus requiring different mechanical connectors, different electrical and data formats and protocols, etc. depending on the user's application. Prior art devices were thus usually configured by the manufacturer to interface with one or more host devices. This custom type of scanner-host device matching is costly and inefficient.
In U.S. Pat. No. 5,258,604, a system is suggested which implements a bar code scanning device which is configured to accept any of a plurality of differently configured interface boards in its handle, wherein each type of interface board is specially adapted to mate with an associated host device. The decoder in the scanner polls the interface board upon power-up and reads an identification code from the particular interface board which the user has inserted. The identification code is used by the decoder to access configuration and formatting data from an on-board memory in order to transmit data to the interface board and ultimately to the host device in the required manner. This requires a user to have to swap electrical boards inside the scanner device whenever he desires to use the scanner with a different host device, which is unwieldy and potentially damaging to the boards due to electrostatic discharge (ESD) phenomena. In addition, when a new type of host device is desired to be used with a scanner already in use in the field, the scanner must be physically reconfigured in order to be able to recognize a new identification code from a new type of interface board and to properly format the decoded data for transfer to the new type of host device. Thus, this type of data acquisition device system is not readily upwards compatible with new host devices with which it may be desired to be connected.
It is also desired in the field of data acquisition such as bar code scanning to be able to use a particular data acquisition device with different host devices at different times by simply connecting the data acquisition device to the host device in a "plug and play" environment, without having to physically reconfigure the data acquisition device with different internal interface boards as in the prior art. This may occur, for example, with a data acquisition device that is used to scan bar codes during the daytime at a POS terminal, and then is used at night time for inventory collection purposes in a storage room with a different host device. Further, even if the two host devices are of the same type and configuration (thus using the same interface), the user may operate the scanner and/or host devices in different ways depending upon the location. Rather than having to reprogram the scanner every time a different host is connected (usually by scanning in various "parameter bar codes"), it is desirable for the scanner to retain its operating parameters and implement them automatically in accordance with the connected host device or in accordance with the scanning of a "location defining" bar code.
It is therefore an object of the present invention to provide a modular and universal data acquisition system which overcomes these and other problems of the prior art.
It is a further object of the present invention to provide a modular and universal data acquisition system in which the data acquisition device which does not need to be reconfigured in order to communicate with different host devices.
It is a further object of the present invention to provide such a system in which the data acquisition devices are upwards compatible and will communicate with newly designed host devices without the need for reconfiguration.
It is a further object of the present invention to provide such a system in which the host devices are upwards compatible and will communicate with newly designed data acquisition devices without the need for reconfiguration.
It is an even further object of the present invention to provide such a system in which the data acquisition device may easily and conveniently be used with any number of differently or similarly configured host devices without the need for the user to manually change operating parameters depending on the host device to which it is connected.
It is further object of the present invention to provide such a system which advantageously implements an intelligent cable interface device in order to provide communications formatting and protocol between an associated host device and any type of data acquisition device.